Could-based data centers may be employed by an enterprise in a variety of settings for running service applications and maintaining data for business and operational functions. For example, a data center within a networked system may support operation of a variety of differing service applications (e.g., web applications, email services, and search engine services). These types of functions may be implemented using a “microservice” architecture. As used herein, the term “microservice” may refer to, for example, a Service-Oriented Architecture (“SOA”) that structures an application as a collection of relatively fine-grained services. By decomposing an application into an architecture having different smaller services, modularity may be improved the application may be easier to understand, develop, and test. A solid architecture may be important to any software solution implemented with microservices. Note that different cloud computing environments, computing platforms, and microservices may be associated with different properties and abilities. A good microservice architect or designer may need business expertise, platform knowledge, creativity as well as rich coding experience to be successful. Manually creating an efficient and accurate architecture, however, can be a time-consuming, costly, and error-prone task—especially when there are a substantial number of microservices and/or complex functionality is required.
What is needed is a system to accurately and efficiently improve microservice architecture design.